using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls; 
using Nextel.Utils;
using System.Collections.Generic;

public partial class ClienteNuevo : PageController
{
    private String PAGINA_BUSQUEDA = URLManager.URL_CLIENTE;
    private String PAGINA_NUEVO = URLManager.URL_CLIENTE_NUEVO;
    public  float latitud;
    public  float longitud;
    
    protected override void initialize()
    {
        
        if (!Page.IsPostBack)
        {
            HidError.Value = "";
            btnGuardar.Text = IdiomaCultura.getMensaje(IdiomaCultura.WEB_GRABAR);
            hidMensaje.Value = Request.QueryString["mensaje"] == null ? "" : Request.QueryString["mensaje"];

            if (ManagerConfiguration.laltitudlongitud != "0")
            {
                String[] latlo = ManagerConfiguration.laltitudlongitud.Split(',');

                latitud = float.Parse(latlo[0]);
                longitud = float.Parse(latlo[1]);
            }
            else
            {
                latitud = float.Parse("- 12.0462037802177");
                longitud = float.Parse("-77.0656585693359");
            }

            if (Request.QueryString["id"] != null)
            {
                subLlenarControl(false);

                hidPk.Value = Request.QueryString["id"];

                ClienteBean cliente = DBCliente.getClienteBeanPK(hidPk.Value);
                txtCodigo.Value = cliente.codigo;
                txtNombre.Value = cliente.nombre;
                txtDireccion.Value = cliente.direccion;
                txtLatitud.Value = cliente.latitud;
                txtLongitud.Value = cliente.longitud;

                litTitulo.Text = IdiomaCultura.getMensaje(IdiomaCultura.WEB_EDITARCLIENTE);
                txtCodigo.Disabled = true;
            }
            else
            {
                litTitulo.Text = IdiomaCultura.getMensaje(IdiomaCultura.WEB_NUEVOCLIENTE);
                hidPk.Value = "0";
                subLlenarControl(true);

            }

            txtCodigo.Focus();
        }
        

    }

    private void subLlenarControl(Boolean pbNuevo)
    {
        UCManNuevo1.Descripcion = IdiomaCultura.getMensaje(IdiomaCultura.WEB_MANTENIMIENTOCLIENTES);
        UCManNuevo1.Link = Request.ApplicationPath + PAGINA_BUSQUEDA;
        UCManNuevo1.Renderizar = true;
        
    }


    protected void btnGuardar_Click(object sender, EventArgs e)
    {
        ClienteBean cliente = new ClienteBean();
        cliente.id = hidPk.Value;
        cliente.codigo = txtCodigo.Value.Trim().ToUpper();
        cliente.nombre = txtNombre.Value.ToUpper();
        cliente.direccion = txtDireccion.Value.ToUpper();
        cliente.flag = AbstractBean.ACTIVO;
        cliente.latitud = txtLatitud.Value.ToUpper().Trim();
        cliente.longitud = txtLongitud.Value.ToUpper().Trim();
        try
        {
            //GRABA Y ACTUALIZA
            DBCliente.addClienteBean(cliente);

            Response.Redirect(Request.ApplicationPath + PAGINA_NUEVO + "?mensaje=" +
                IdiomaCultura.getMensajeEncodeHTML(IdiomaCultura.WEB_MENSAJE_EXITO));
        }
        catch (Exception ex)
        {
            if (IdiomaCultura.WEB_CODIGOREPETIDO.Equals(ex.Message))
            {
                HidError.Value = IdiomaCultura.getMensaje(ex.Message, txtCodigo.Value);
            }
            else
            {
                BaseLN.registrarLog("ERROR:" + ex.Message);
                HidError.Value = HttpUtility.HtmlEncode(ex.Message);
            }
            hidMensaje.Value = ""; 
        }
    }
}